Phase detectors used in digital feedback delay locked loops (DLLs) can suffer from timing errors such as large setup or hold times, due to large process variations. These errors result in inaccurate DLL timing, and can go unnoticed, resulting in wrong timing margining results or poor IO performance due to inaccurate timing training.